package com.agrimall.mapper;

import com.agrimall.entity.Review;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * 商品评价Mapper接口
 */
public interface ReviewMapper {
    /**
     * 插入评价
     */
    int insert(Review review);
    
    /**
     * 根据商品ID查询评价列表
     */
    List<Review> selectByProductId(@Param("productId") Long productId,
                                   @Param("offset") int offset,
                                   @Param("limit") int limit);
    
    /**
     * 根据订单ID查询评价
     */
    Review selectByOrderId(Long orderId);
    
    /**
     * 根据用户ID查询评价列表
     */
    List<Review> selectByUserId(@Param("userId") Long userId,
                                @Param("offset") int offset,
                                @Param("limit") int limit);
    
    /**
     * 根据用户ID统计评价总数
     */
    int countByUserId(Long userId);
    
    /**
     * 根据评价ID删除评价（需要验证用户ID）
     */
    int deleteById(@Param("reviewId") Long reviewId, @Param("userId") Long userId);
}


